<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../style.css" type="text/css" media="screen">
<link rel="stylesheet" href="../../../print.css" type="text/css" media="print">
<meta content="View,org.simplemvc.core.View,controller,model,defaultController,destroy,hide,registerEvents,show" name="keywords">
<title>org.simplemvc.core.View</title>
</head>
<body>
<script type="text/javascript" language="javascript" src="../../../asdoc.js"></script><script type="text/javascript" language="javascript" src="../../../cookies.js"></script><script type="text/javascript" language="javascript">
<!--
				asdocTitle = 'View - AS3-SimpleMVC - A simple MVC design pattern for ActionScript 3.0.';
				var baseRef = '../../../';
				window.onload = configPage;
			--></script>
<table style="display:none" id="titleTable" cellspacing="0" cellpadding="0" class="titleTable">
<tr>
<td align="left" class="titleTableTitle">AS3-SimpleMVC</td><td align="right" class="titleTableTopNav"><a onclick="loadClassListFrame('../../../all-classes.html')" href="../../../package-summary.html">All&nbsp;Packages</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../all-classes.html')" href="../../../class-summary.html">All&nbsp;Classes</a>&nbsp;|&nbsp;<a onclick="loadClassListFrame('../../../index-list.html')" href="../../../all-index-A.html">Index</a>&nbsp;|&nbsp;<a href="../../../index.html?org/simplemvc/core/View.html&amp;org/simplemvc/core/class-list.html" id="framesLink1">Frames</a><a onclick="parent.location=document.location" href="" style="display:none" id="noFramesLink1">No&nbsp;Frames</a></td><td rowspan="3" align="right" class="titleTableLogo"><img alt="Adobe Logo" title="Adobe Logo" class="logoImage" src="../../../images/logo.jpg"></td>
</tr>
<tr class="titleTableRow2">
<td align="left" id="subTitle" class="titleTableSubTitle">Class&nbsp;View</td><td align="right" id="subNav" class="titleTableSubNav"><a href="#propertySummary">Properties</a>&nbsp;| <a href="#methodSummary">Methods</a></td>
</tr>
<tr class="titleTableRow3">
<td colspan="2">&nbsp;</td>
</tr>
</table>
<script type="text/javascript" language="javascript">
<!--
if (!isEclipse() || window.name != ECLIPSE_FRAME_NAME) {titleBar_setSubTitle("Class View"); titleBar_setSubNav(false,true,false,false,false,false,true,false,false,false,false,false,false,false);}
--></script>
<div class="MainContent">
<table cellspacing="0" cellpadding="0" class="classHeaderTable">
<tr>
<td class="classHeaderTableLabel">Package</td><td><a onclick="javascript:loadClassListFrame('class-list.html')" href="package-detail.html">org.simplemvc.core</a></td>
</tr>
<tr>
<td class="classHeaderTableLabel">Class</td><td class="classSignature">public class View</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Inheritance</td><td class="inheritanceList">View <img class="inheritArrow" alt="Inheritance" title="Inheritance" src="../../../images/inherit-arrow.gif"> flash.display.Sprite</td>
</tr>
<tr>
<td class="classHeaderTableLabel">Implements</td><td><a href="../interfaces/IView.html">IView</a></td>
</tr>
</table>
<p></p>
  The View component of the MVC design pattern is a distinct representation of a Model's data and or logic. 
  A view listens too and represents changes to the model for states of the application or logic. It is 
  recommended that the views in an MVC system be unaware of the inner workings of the system's 
  Model (ie. utilize a push only dispatching protocol in which the Model pushes information to 
  it's listeners through the event object). 
  
  It is the responsibility of each view to make sure it has a controller. The controller can either be 
  passed in to the constructor or it will be automatically made by the view's. To create an MVC relationship; 
  a model is created and a view is created which is then added as a listener of its associated model. 
  The view primarily creates its own controller, but can use an existing one, this is not recommended. 
  It will be necessary to extend this View class and the core controller method in order to make more 
  specific view objects for specific view/controller pairings.
  
  <p></p>
<br>
<span class="label">Example</span>
<br>  <div class='listing'><pre>
  import org.simplemvc.core.View;
  var view:View = new View( model );
  </pre></div>
  
  <p></p>
<br>
<hr>
</div>
<a name="propertySummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Properties</div>
<table id="summaryTableProperty" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Property</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#controller">controller</a> : <a href="../interfaces/IController.html">IController</a>
<div class="summaryTableDescription">
   Gets the view's controller instance.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol"><a class="signatureLink" href="#model">model</a> : <a href="../core/Model.html">Model</a>
<div class="summaryTableDescription">
   Gets this view's model.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
</table>
</div>
<a name="methodSummary"></a>
<div class="summarySection">
<div class="summaryTableTitle">Public Methods</div>
<table id="summaryTableMethod" class="summaryTable " cellpadding="3" cellspacing="0">
<tr>
<th>&nbsp;</th><th colspan="2">Method</th><th class="summaryTableOwnerCol">Defined&nbsp;by</th>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#View()">View</a>(model:<a href="Model.html">Model</a>, controller:<a href="../interfaces/IController.html">IController</a> = null)</div>
<div class="summaryTableDescription">
   Create the view for the mvc system.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#defaultController()">defaultController</a>():<a href="../interfaces/IController.html">IController</a>
</div>
<div class="summaryTableDescription">
   Creates an abstract default controller.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#destroy()">destroy</a>():void</div>
<div class="summaryTableDescription">
   Method used to destroy the view and dispatch the next event.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#hide()">hide</a>(event:Event):void</div>
<div class="summaryTableDescription">
   The hide method.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#registerEvents()">registerEvents</a>():void</div>
<div class="summaryTableDescription">
   Register events for the view.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
<tr class="">
<td class="summaryTablePaddingCol">&nbsp;</td><td class="summaryTableInheritanceCol">&nbsp;</td><td class="summaryTableSignatureCol">
<div class="summarySignature">
<a class="signatureLink" href="#show()">show</a>(event:Event):void</div>
<div class="summaryTableDescription">
   The show method.</div>
</td><td class="summaryTableOwnerCol">View</td>
</tr>
</table>
</div>
<script type="text/javascript" language="javascript">
<!--
showHideInherited();
--></script>
<div class="MainContent">
<a name="propertyDetail"></a>
<div class="detailSectionHeader">Property detail</div>
<a name="controller"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">controller</td><td class="detailHeaderType">property</td>
</tr>
</table>
<div class="detailBody">
<code>controller:<a href="../interfaces/IController.html">IController</a></code>&nbsp;&nbsp;[read-write]<p>
   Gets the view's controller instance.
   
   </p><span class="label">Implementation</span>
<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;public function get controller():<a href="../interfaces/IController.html">IController</a></code>
<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;public function set controller(value:<a href="../interfaces/IController.html">IController</a>):void</code>
<br>
</div>
<a name="model"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">model</td><td class="detailHeaderType">property</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>model:<a href="../core/Model.html">Model</a></code>&nbsp;&nbsp;[read-write]<p>
   Gets this view's model.
   
   </p><span class="label">Implementation</span>
<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;public function get model():<a href="../core/Model.html">Model</a></code>
<br>
<code>&nbsp;&nbsp;&nbsp;&nbsp;public function set model(value:<a href="../core/Model.html">Model</a>):void</code>
<br>
</div>
<a name="constructorDetail"></a>
<div class="detailSectionHeader">Constructor detail</div>
<a name="View()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">View</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">constructor</td>
</tr>
</table>
<div class="detailBody">
<code>public function View(model:<a href="Model.html">Model</a>, controller:<a href="../interfaces/IController.html">IController</a> = null)</code><p>
   Create the view for the mvc system.
   
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">model</span>:<a href="Model.html">Model</a></code> &mdash;    the model to associate with this view.
   </td>
</tr>
<tr>
<td class="paramSpacer">&nbsp;</td>
</tr>
<tr>
<td width="20px"></td><td><code><span class="label">controller</span>:<a href="../interfaces/IController.html">IController</a></code> (default = <code>null</code>)<code></code> &mdash;  [Optional] the already created controller to associate with this view.
   </td>
</tr>
</table>
</div>
<a name="methodDetail"></a>
<div class="detailSectionHeader">Method detail</div>
<a name="defaultController()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">defaultController</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td>
</tr>
</table>
<div class="detailBody">
<code>public function defaultController():<a href="../interfaces/IController.html">IController</a></code><p>
   Creates an abstract default controller. If a view handles user input, 
   this method MUST be overwritten. Otherwise the call will scope up 
   to the abstract view creating a null controller.
      </p><p></p>
<span class="label">Returns</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20"></td><td><code><a href="../interfaces/IController.html">IController</a></code> &mdash; 
                        IController;
   
                        
                     </td>
</tr>
</table>
</div>
<a name="destroy()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">destroy</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function destroy():void</code><p>
   Method used to destroy the view and dispatch the next event.
   </p></div>
<a name="hide()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">hide</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function hide(event:Event):void</code><p>
   The hide method.
   
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">event</span>:Event</code> &mdash;  Event.
   </td>
</tr>
</table>
</div>
<a name="registerEvents()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">registerEvents</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function registerEvents():void</code><p>
   Register events for the view.
   </p></div>
<a name="show()"></a>
<table cellspacing="0" cellpadding="0" class="detailHeader">
<tr>
<td class="detailHeaderName">show</td><td class="detailHeaderParens">()</td><td class="detailHeaderType">method</td><td class="detailHeaderRule">&nbsp;</td>
</tr>
</table>
<div class="detailBody">
<code>public function show(event:Event):void</code><p>
   The show method.
   
   </p><span class="label">Parameters</span>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="20px"></td><td><code><span class="label">event</span>:Event</code> &mdash;  Event.
   </td>
</tr>
</table>
</div>
<br>
<br>
<hr>
<br>
<p></p>
<center class="copyright"> 
</center>
</div>
</body>
</html>
<!-- -->
